package set_;

import javax.print.DocFlavor;
import java.util.Comparator;
import java.util.TreeSet;

/**
 * @Author 小闽
 * @Date 2024/11/14 11:42
 * @PackageName: set_
 * @ClassName: TreeSet
 * @Description:
 * @Version
 */
@SuppressWarnings({"all"})
public class TreeSet_ {
    public static void main(String[] args) {
        // 当使用无参构造器，创建TreeSet时，仍然是无序的
        // 希望添加的元素，按照字符串大小来排序
        // 使用 TreeSet 提供的一个构造器，可以传入一个比较器（匿名内部类）并指定排序规则
        // 简单看源码

        TreeSet treeSet = new TreeSet(new Comparator() {
            @Override
            public int compare(Object o1, Object o2) {
                return ((String)o1).length() - ((String)o2).length();
            }
        });
        treeSet.add("jack");
        treeSet.add("tom");
        treeSet.add("sp");
        treeSet.add("a");
        treeSet.add("abc");

        System.out.println("treeSet=" +treeSet);
    }
}
